package com.ticket.sass.common.ticketserver.dto.output

import com.ticket.sass.common.ticketserver.enums.OrderTicketStatus

data class OrderTicketStatusOutput(
    val status: OrderTicketStatus,
    /**
     * 取票码列表
     *
     * 辰星（PrintNo：取票序列号，VerifyCode：取票验证码）
     * 鼎新（ticketFlag1：序列号，ticketFlag2：验证码）
     * 凤凰云智（printCode - 取票号）
     */
    val takeCodes: List<TakeCode>,

    /**
     * 座位信息列表
     */
    val seatList: List<Seat>,
) {
    data class TakeCode(
        /**
         * 取票码名字
         */
        val name: String,
        /**
         * 取票码值
         */
        val value: String,
    )

    data class Seat(
        /**
         * 座位 id
         *
         * 鼎新才有，其它返回和 code 一致
         */
        val id: String,

        /**
         * 座位编码 - 专资规范
         */
        val code: String,

        /**
         * 票号
         */
        val filmTicketCode: String,

        /**
         * 电影票信息码（国标二维码）
         */
        val ticketInfoCode: String,
    )
}
